/*
 * ESPRSSIF MIT License
 *
 * Copyright (c) 2015 <ESPRESSIF SYSTEMS (SHANGHAI) PTE LTD>
 *
 * Permission is hereby granted for use on ESPRESSIF SYSTEMS ESP32 only, in which case,
 * it is free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the Software is furnished
 * to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or
 * substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 *
 */

#ifndef _PLUS_CNT_REG_H
#define _PLUS_CNT_REG_H

#define PCNT_U0_CONF0 (DR_REG_PCNT_BASE + 0x0000)
#define PCNT_CH1_LCTRL_MODE_U0 0x00000003
#define PCNT_CH1_LCTRL_MODE_U0_S 30
#define PCNT_CH1_HCTRL_MODE_U0 0x00000003
#define PCNT_CH1_HCTRL_MODE_U0_S 28
#define PCNT_CH1_POS_MODE_U0 0x00000003
#define PCNT_CH1_POS_MODE_U0_S 26
#define PCNT_CH1_NEG_MODE_U0 0x00000003
#define PCNT_CH1_NEG_MODE_U0_S 24
#define PCNT_CH0_LCTRL_MODE_U0 0x00000003
#define PCNT_CH0_LCTRL_MODE_U0_S 22
#define PCNT_CH0_HCTRL_MODE_U0 0x00000003
#define PCNT_CH0_HCTRL_MODE_U0_S 20
#define PCNT_CH0_POS_MODE_U0 0x00000003
#define PCNT_CH0_POS_MODE_U0_S 18
#define PCNT_CH0_NEG_MODE_U0 0x00000003
#define PCNT_CH0_NEG_MODE_U0_S 16
#define PCNT_THR_THRES1_EN_U0 (BIT(15))
#define PCNT_THR_THRES0_EN_U0 (BIT(14))
#define PCNT_THR_L_LIM_EN_U0 (BIT(13))
#define PCNT_THR_H_LIM_EN_U0 (BIT(12))
#define PCNT_THR_ZERO_EN_U0 (BIT(11))
#define PCNT_FILTER_EN_U0 (BIT(10))
#define PCNT_FILTER_THRES_U0 0x000003FF
#define PCNT_FILTER_THRES_U0_S 0

#define PCNT_U0_CONF1 (DR_REG_PCNT_BASE + 0x0004)
#define PCNT_CNT_THRES1_U0 0x0000FFFF
#define PCNT_CNT_THRES1_U0_S 16
#define PCNT_CNT_THRES0_U0 0x0000FFFF
#define PCNT_CNT_THRES0_U0_S 0

#define PCNT_U0_CONF2 (DR_REG_PCNT_BASE + 0x0008)
#define PCNT_CNT_L_LIM_U0 0x0000FFFF
#define PCNT_CNT_L_LIM_U0_S 16
#define PCNT_CNT_H_LIM_U0 0x0000FFFF
#define PCNT_CNT_H_LIM_U0_S 0

#define PCNT_U1_CONF0 (DR_REG_PCNT_BASE + 0x000c)
#define PCNT_CH1_LCTRL_MODE_U1 0x00000003
#define PCNT_CH1_LCTRL_MODE_U1_S 30
#define PCNT_CH1_HCTRL_MODE_U1 0x00000003
#define PCNT_CH1_HCTRL_MODE_U1_S 28
#define PCNT_CH1_POS_MODE_U1 0x00000003
#define PCNT_CH1_POS_MODE_U1_S 26
#define PCNT_CH1_NEG_MODE_U1 0x00000003
#define PCNT_CH1_NEG_MODE_U1_S 24
#define PCNT_CH0_LCTRL_MODE_U1 0x00000003
#define PCNT_CH0_LCTRL_MODE_U1_S 22
#define PCNT_CH0_HCTRL_MODE_U1 0x00000003
#define PCNT_CH0_HCTRL_MODE_U1_S 20
#define PCNT_CH0_POS_MODE_U1 0x00000003
#define PCNT_CH0_POS_MODE_U1_S 18
#define PCNT_CH0_NEG_MODE_U1 0x00000003
#define PCNT_CH0_NEG_MODE_U1_S 16
#define PCNT_THR_THRES1_EN_U1 (BIT(15))
#define PCNT_THR_THRES0_EN_U1 (BIT(14))
#define PCNT_THR_L_LIM_EN_U1 (BIT(13))
#define PCNT_THR_H_LIM_EN_U1 (BIT(12))
#define PCNT_THR_ZERO_EN_U1 (BIT(11))
#define PCNT_FILTER_EN_U1 (BIT(10))
#define PCNT_FILTER_THRES_U1 0x000003FF
#define PCNT_FILTER_THRES_U1_S 0

#define PCNT_U1_CONF1 (DR_REG_PCNT_BASE + 0x0010)
#define PCNT_CNT_THRES1_U1 0x0000FFFF
#define PCNT_CNT_THRES1_U1_S 16
#define PCNT_CNT_THRES0_U1 0x0000FFFF
#define PCNT_CNT_THRES0_U1_S 0

#define PCNT_U1_CONF2 (DR_REG_PCNT_BASE + 0x0014)
#define PCNT_CNT_L_LIM_U1 0x0000FFFF
#define PCNT_CNT_L_LIM_U1_S 16
#define PCNT_CNT_H_LIM_U1 0x0000FFFF
#define PCNT_CNT_H_LIM_U1_S 0

#define PCNT_U2_CONF0 (DR_REG_PCNT_BASE + 0x0018)
#define PCNT_CH1_LCTRL_MODE_U2 0x00000003
#define PCNT_CH1_LCTRL_MODE_U2_S 30
#define PCNT_CH1_HCTRL_MODE_U2 0x00000003
#define PCNT_CH1_HCTRL_MODE_U2_S 28
#define PCNT_CH1_POS_MODE_U2 0x00000003
#define PCNT_CH1_POS_MODE_U2_S 26
#define PCNT_CH1_NEG_MODE_U2 0x00000003
#define PCNT_CH1_NEG_MODE_U2_S 24
#define PCNT_CH0_LCTRL_MODE_U2 0x00000003
#define PCNT_CH0_LCTRL_MODE_U2_S 22
#define PCNT_CH0_HCTRL_MODE_U2 0x00000003
#define PCNT_CH0_HCTRL_MODE_U2_S 20
#define PCNT_CH0_POS_MODE_U2 0x00000003
#define PCNT_CH0_POS_MODE_U2_S 18
#define PCNT_CH0_NEG_MODE_U2 0x00000003
#define PCNT_CH0_NEG_MODE_U2_S 16
#define PCNT_THR_THRES1_EN_U2 (BIT(15))
#define PCNT_THR_THRES0_EN_U2 (BIT(14))
#define PCNT_THR_L_LIM_EN_U2 (BIT(13))
#define PCNT_THR_H_LIM_EN_U2 (BIT(12))
#define PCNT_THR_ZERO_EN_U2 (BIT(11))
#define PCNT_FILTER_EN_U2 (BIT(10))
#define PCNT_FILTER_THRES_U2 0x000003FF
#define PCNT_FILTER_THRES_U2_S 0

#define PCNT_U2_CONF1 (DR_REG_PCNT_BASE + 0x001c)
#define PCNT_CNT_THRES1_U2 0x0000FFFF
#define PCNT_CNT_THRES1_U2_S 16
#define PCNT_CNT_THRES0_U2 0x0000FFFF
#define PCNT_CNT_THRES0_U2_S 0

#define PCNT_U2_CONF2 (DR_REG_PCNT_BASE + 0x0020)
#define PCNT_CNT_L_LIM_U2 0x0000FFFF
#define PCNT_CNT_L_LIM_U2_S 16
#define PCNT_CNT_H_LIM_U2 0x0000FFFF
#define PCNT_CNT_H_LIM_U2_S 0

#define PCNT_U3_CONF0 (DR_REG_PCNT_BASE + 0x0024)
#define PCNT_CH1_LCTRL_MODE_U3 0x00000003
#define PCNT_CH1_LCTRL_MODE_U3_S 30
#define PCNT_CH1_HCTRL_MODE_U3 0x00000003
#define PCNT_CH1_HCTRL_MODE_U3_S 28
#define PCNT_CH1_POS_MODE_U3 0x00000003
#define PCNT_CH1_POS_MODE_U3_S 26
#define PCNT_CH1_NEG_MODE_U3 0x00000003
#define PCNT_CH1_NEG_MODE_U3_S 24
#define PCNT_CH0_LCTRL_MODE_U3 0x00000003
#define PCNT_CH0_LCTRL_MODE_U3_S 22
#define PCNT_CH0_HCTRL_MODE_U3 0x00000003
#define PCNT_CH0_HCTRL_MODE_U3_S 20
#define PCNT_CH0_POS_MODE_U3 0x00000003
#define PCNT_CH0_POS_MODE_U3_S 18
#define PCNT_CH0_NEG_MODE_U3 0x00000003
#define PCNT_CH0_NEG_MODE_U3_S 16
#define PCNT_THR_THRES1_EN_U3 (BIT(15))
#define PCNT_THR_THRES0_EN_U3 (BIT(14))
#define PCNT_THR_L_LIM_EN_U3 (BIT(13))
#define PCNT_THR_H_LIM_EN_U3 (BIT(12))
#define PCNT_THR_ZERO_EN_U3 (BIT(11))
#define PCNT_FILTER_EN_U3 (BIT(10))
#define PCNT_FILTER_THRES_U3 0x000003FF
#define PCNT_FILTER_THRES_U3_S 0

#define PCNT_U3_CONF1 (DR_REG_PCNT_BASE + 0x0028)
#define PCNT_CNT_THRES1_U3 0x0000FFFF
#define PCNT_CNT_THRES1_U3_S 16
#define PCNT_CNT_THRES0_U3 0x0000FFFF
#define PCNT_CNT_THRES0_U3_S 0

#define PCNT_U3_CONF2 (DR_REG_PCNT_BASE + 0x002c)
#define PCNT_CNT_L_LIM_U3 0x0000FFFF
#define PCNT_CNT_L_LIM_U3_S 16
#define PCNT_CNT_H_LIM_U3 0x0000FFFF
#define PCNT_CNT_H_LIM_U3_S 0

#define PCNT_U4_CONF0 (DR_REG_PCNT_BASE + 0x0030)
#define PCNT_CH1_LCTRL_MODE_U4 0x00000003
#define PCNT_CH1_LCTRL_MODE_U4_S 30
#define PCNT_CH1_HCTRL_MODE_U4 0x00000003
#define PCNT_CH1_HCTRL_MODE_U4_S 28
#define PCNT_CH1_POS_MODE_U4 0x00000003
#define PCNT_CH1_POS_MODE_U4_S 26
#define PCNT_CH1_NEG_MODE_U4 0x00000003
#define PCNT_CH1_NEG_MODE_U4_S 24
#define PCNT_CH0_LCTRL_MODE_U4 0x00000003
#define PCNT_CH0_LCTRL_MODE_U4_S 22
#define PCNT_CH0_HCTRL_MODE_U4 0x00000003
#define PCNT_CH0_HCTRL_MODE_U4_S 20
#define PCNT_CH0_POS_MODE_U4 0x00000003
#define PCNT_CH0_POS_MODE_U4_S 18
#define PCNT_CH0_NEG_MODE_U4 0x00000003
#define PCNT_CH0_NEG_MODE_U4_S 16
#define PCNT_THR_THRES1_EN_U4 (BIT(15))
#define PCNT_THR_THRES0_EN_U4 (BIT(14))
#define PCNT_THR_L_LIM_EN_U4 (BIT(13))
#define PCNT_THR_H_LIM_EN_U4 (BIT(12))
#define PCNT_THR_ZERO_EN_U4 (BIT(11))
#define PCNT_FILTER_EN_U4 (BIT(10))
#define PCNT_FILTER_THRES_U4 0x000003FF
#define PCNT_FILTER_THRES_U4_S 0

#define PCNT_U4_CONF1 (DR_REG_PCNT_BASE + 0x0034)
#define PCNT_CNT_THRES1_U4 0x0000FFFF
#define PCNT_CNT_THRES1_U4_S 16
#define PCNT_CNT_THRES0_U4 0x0000FFFF
#define PCNT_CNT_THRES0_U4_S 0

#define PCNT_U4_CONF2 (DR_REG_PCNT_BASE + 0x0038)
#define PCNT_CNT_L_LIM_U4 0x0000FFFF
#define PCNT_CNT_L_LIM_U4_S 16
#define PCNT_CNT_H_LIM_U4 0x0000FFFF
#define PCNT_CNT_H_LIM_U4_S 0

#define PCNT_U5_CONF0 (DR_REG_PCNT_BASE + 0x003c)
#define PCNT_CH1_LCTRL_MODE_U5 0x00000003
#define PCNT_CH1_LCTRL_MODE_U5_S 30
#define PCNT_CH1_HCTRL_MODE_U5 0x00000003
#define PCNT_CH1_HCTRL_MODE_U5_S 28
#define PCNT_CH1_POS_MODE_U5 0x00000003
#define PCNT_CH1_POS_MODE_U5_S 26
#define PCNT_CH1_NEG_MODE_U5 0x00000003
#define PCNT_CH1_NEG_MODE_U5_S 24
#define PCNT_CH0_LCTRL_MODE_U5 0x00000003
#define PCNT_CH0_LCTRL_MODE_U5_S 22
#define PCNT_CH0_HCTRL_MODE_U5 0x00000003
#define PCNT_CH0_HCTRL_MODE_U5_S 20
#define PCNT_CH0_POS_MODE_U5 0x00000003
#define PCNT_CH0_POS_MODE_U5_S 18
#define PCNT_CH0_NEG_MODE_U5 0x00000003
#define PCNT_CH0_NEG_MODE_U5_S 16
#define PCNT_THR_THRES1_EN_U5 (BIT(15))
#define PCNT_THR_THRES0_EN_U5 (BIT(14))
#define PCNT_THR_L_LIM_EN_U5 (BIT(13))
#define PCNT_THR_H_LIM_EN_U5 (BIT(12))
#define PCNT_THR_ZERO_EN_U5 (BIT(11))
#define PCNT_FILTER_EN_U5 (BIT(10))
#define PCNT_FILTER_THRES_U5 0x000003FF
#define PCNT_FILTER_THRES_U5_S 0

#define PCNT_U5_CONF1 (DR_REG_PCNT_BASE + 0x0040)
#define PCNT_CNT_THRES1_U5 0x0000FFFF
#define PCNT_CNT_THRES1_U5_S 16
#define PCNT_CNT_THRES0_U5 0x0000FFFF
#define PCNT_CNT_THRES0_U5_S 0

#define PCNT_U5_CONF2 (DR_REG_PCNT_BASE + 0x0044)
#define PCNT_CNT_L_LIM_U5 0x0000FFFF
#define PCNT_CNT_L_LIM_U5_S 16
#define PCNT_CNT_H_LIM_U5 0x0000FFFF
#define PCNT_CNT_H_LIM_U5_S 0

#define PCNT_U6_CONF0 (DR_REG_PCNT_BASE + 0x0048)
#define PCNT_CH1_LCTRL_MODE_U6 0x00000003
#define PCNT_CH1_LCTRL_MODE_U6_S 30
#define PCNT_CH1_HCTRL_MODE_U6 0x00000003
#define PCNT_CH1_HCTRL_MODE_U6_S 28
#define PCNT_CH1_POS_MODE_U6 0x00000003
#define PCNT_CH1_POS_MODE_U6_S 26
#define PCNT_CH1_NEG_MODE_U6 0x00000003
#define PCNT_CH1_NEG_MODE_U6_S 24
#define PCNT_CH0_LCTRL_MODE_U6 0x00000003
#define PCNT_CH0_LCTRL_MODE_U6_S 22
#define PCNT_CH0_HCTRL_MODE_U6 0x00000003
#define PCNT_CH0_HCTRL_MODE_U6_S 20
#define PCNT_CH0_POS_MODE_U6 0x00000003
#define PCNT_CH0_POS_MODE_U6_S 18
#define PCNT_CH0_NEG_MODE_U6 0x00000003
#define PCNT_CH0_NEG_MODE_U6_S 16
#define PCNT_THR_THRES1_EN_U6 (BIT(15))
#define PCNT_THR_THRES0_EN_U6 (BIT(14))
#define PCNT_THR_L_LIM_EN_U6 (BIT(13))
#define PCNT_THR_H_LIM_EN_U6 (BIT(12))
#define PCNT_THR_ZERO_EN_U6 (BIT(11))
#define PCNT_FILTER_EN_U6 (BIT(10))
#define PCNT_FILTER_THRES_U6 0x000003FF
#define PCNT_FILTER_THRES_U6_S 0

#define PCNT_U6_CONF1 (DR_REG_PCNT_BASE + 0x004c)
#define PCNT_CNT_THRES1_U6 0x0000FFFF
#define PCNT_CNT_THRES1_U6_S 16
#define PCNT_CNT_THRES0_U6 0x0000FFFF
#define PCNT_CNT_THRES0_U6_S 0

#define PCNT_U6_CONF2 (DR_REG_PCNT_BASE + 0x0050)
#define PCNT_CNT_L_LIM_U6 0x0000FFFF
#define PCNT_CNT_L_LIM_U6_S 16
#define PCNT_CNT_H_LIM_U6 0x0000FFFF
#define PCNT_CNT_H_LIM_U6_S 0

#define PCNT_U7_CONF0 (DR_REG_PCNT_BASE + 0x0054)
#define PCNT_CH1_LCTRL_MODE_U7 0x00000003
#define PCNT_CH1_LCTRL_MODE_U7_S 30
#define PCNT_CH1_HCTRL_MODE_U7 0x00000003
#define PCNT_CH1_HCTRL_MODE_U7_S 28
#define PCNT_CH1_POS_MODE_U7 0x00000003
#define PCNT_CH1_POS_MODE_U7_S 26
#define PCNT_CH1_NEG_MODE_U7 0x00000003
#define PCNT_CH1_NEG_MODE_U7_S 24
#define PCNT_CH0_LCTRL_MODE_U7 0x00000003
#define PCNT_CH0_LCTRL_MODE_U7_S 22
#define PCNT_CH0_HCTRL_MODE_U7 0x00000003
#define PCNT_CH0_HCTRL_MODE_U7_S 20
#define PCNT_CH0_POS_MODE_U7 0x00000003
#define PCNT_CH0_POS_MODE_U7_S 18
#define PCNT_CH0_NEG_MODE_U7 0x00000003
#define PCNT_CH0_NEG_MODE_U7_S 16
#define PCNT_THR_THRES1_EN_U7 (BIT(15))
#define PCNT_THR_THRES0_EN_U7 (BIT(14))
#define PCNT_THR_L_LIM_EN_U7 (BIT(13))
#define PCNT_THR_H_LIM_EN_U7 (BIT(12))
#define PCNT_THR_ZERO_EN_U7 (BIT(11))
#define PCNT_FILTER_EN_U7 (BIT(10))
#define PCNT_FILTER_THRES_U7 0x000003FF
#define PCNT_FILTER_THRES_U7_S 0

#define PCNT_U7_CONF1 (DR_REG_PCNT_BASE + 0x0058)
#define PCNT_CNT_THRES1_U7 0x0000FFFF
#define PCNT_CNT_THRES1_U7_S 16
#define PCNT_CNT_THRES0_U7 0x0000FFFF
#define PCNT_CNT_THRES0_U7_S 0

#define PCNT_U7_CONF2 (DR_REG_PCNT_BASE + 0x005c)
#define PCNT_CNT_L_LIM_U7 0x0000FFFF
#define PCNT_CNT_L_LIM_U7_S 16
#define PCNT_CNT_H_LIM_U7 0x0000FFFF
#define PCNT_CNT_H_LIM_U7_S 0

#define PCNT_U0_CNT (DR_REG_PCNT_BASE + 0x0060)
#define PCNT_PLUS_CNT_U0 0x0000FFFF
#define PCNT_PLUS_CNT_U0_S 0

#define PCNT_U1_CNT (DR_REG_PCNT_BASE + 0x0064)
#define PCNT_PLUS_CNT_U1 0x0000FFFF
#define PCNT_PLUS_CNT_U1_S 0

#define PCNT_U2_CNT (DR_REG_PCNT_BASE + 0x0068)
#define PCNT_PLUS_CNT_U2 0x0000FFFF
#define PCNT_PLUS_CNT_U2_S 0

#define PCNT_U3_CNT (DR_REG_PCNT_BASE + 0x006c)
#define PCNT_PLUS_CNT_U3 0x0000FFFF
#define PCNT_PLUS_CNT_U3_S 0

#define PCNT_U4_CNT (DR_REG_PCNT_BASE + 0x0070)
#define PCNT_PLUS_CNT_U4 0x0000FFFF
#define PCNT_PLUS_CNT_U4_S 0

#define PCNT_U5_CNT (DR_REG_PCNT_BASE + 0x0074)
#define PCNT_PLUS_CNT_U5 0x0000FFFF
#define PCNT_PLUS_CNT_U5_S 0

#define PCNT_U6_CNT (DR_REG_PCNT_BASE + 0x0078)
#define PCNT_PLUS_CNT_U6 0x0000FFFF
#define PCNT_PLUS_CNT_U6_S 0

#define PCNT_U7_CNT (DR_REG_PCNT_BASE + 0x007c)
#define PCNT_PLUS_CNT_U7 0x0000FFFF
#define PCNT_PLUS_CNT_U7_S 0

#define PCNT_INT_RAW (DR_REG_PCNT_BASE + 0x0080)
#define PCNT_CNT_THR_EVENT_U7_INT_RAW (BIT(7))
#define PCNT_CNT_THR_EVENT_U6_INT_RAW (BIT(6))
#define PCNT_CNT_THR_EVENT_U5_INT_RAW (BIT(5))
#define PCNT_CNT_THR_EVENT_U4_INT_RAW (BIT(4))
#define PCNT_CNT_THR_EVENT_U3_INT_RAW (BIT(3))
#define PCNT_CNT_THR_EVENT_U2_INT_RAW (BIT(2))
#define PCNT_CNT_THR_EVENT_U1_INT_RAW (BIT(1))
#define PCNT_CNT_THR_EVENT_U0_INT_RAW (BIT(0))

#define PCNT_INT_ST (DR_REG_PCNT_BASE + 0x0084)
#define PCNT_CNT_THR_EVENT_U7_INT_ST (BIT(7))
#define PCNT_CNT_THR_EVENT_U6_INT_ST (BIT(6))
#define PCNT_CNT_THR_EVENT_U5_INT_ST (BIT(5))
#define PCNT_CNT_THR_EVENT_U4_INT_ST (BIT(4))
#define PCNT_CNT_THR_EVENT_U3_INT_ST (BIT(3))
#define PCNT_CNT_THR_EVENT_U2_INT_ST (BIT(2))
#define PCNT_CNT_THR_EVENT_U1_INT_ST (BIT(1))
#define PCNT_CNT_THR_EVENT_U0_INT_ST (BIT(0))

#define PCNT_INT_ENA (DR_REG_PCNT_BASE + 0x0088)
#define PCNT_CNT_THR_EVENT_U7_INT_ENA (BIT(7))
#define PCNT_CNT_THR_EVENT_U6_INT_ENA (BIT(6))
#define PCNT_CNT_THR_EVENT_U5_INT_ENA (BIT(5))
#define PCNT_CNT_THR_EVENT_U4_INT_ENA (BIT(4))
#define PCNT_CNT_THR_EVENT_U3_INT_ENA (BIT(3))
#define PCNT_CNT_THR_EVENT_U2_INT_ENA (BIT(2))
#define PCNT_CNT_THR_EVENT_U1_INT_ENA (BIT(1))
#define PCNT_CNT_THR_EVENT_U0_INT_ENA (BIT(0))

#define PCNT_INT_CLR (DR_REG_PCNT_BASE + 0x008c)
#define PCNT_CNT_THR_EVENT_U7_INT_CLR (BIT(7))
#define PCNT_CNT_THR_EVENT_U6_INT_CLR (BIT(6))
#define PCNT_CNT_THR_EVENT_U5_INT_CLR (BIT(5))
#define PCNT_CNT_THR_EVENT_U4_INT_CLR (BIT(4))
#define PCNT_CNT_THR_EVENT_U3_INT_CLR (BIT(3))
#define PCNT_CNT_THR_EVENT_U2_INT_CLR (BIT(2))
#define PCNT_CNT_THR_EVENT_U1_INT_CLR (BIT(1))
#define PCNT_CNT_THR_EVENT_U0_INT_CLR (BIT(0))

#define PCNT_U0_STATUS (DR_REG_PCNT_BASE + 0x0090)
#define PCNT_CORE_STATUS_U0 0xFFFFFFFF
#define PCNT_CORE_STATUS_U0_S 0

#define PCNT_U1_STATUS (DR_REG_PCNT_BASE + 0x0094)
#define PCNT_CORE_STATUS_U1 0xFFFFFFFF
#define PCNT_CORE_STATUS_U1_S 0

#define PCNT_U2_STATUS (DR_REG_PCNT_BASE + 0x0098)
#define PCNT_CORE_STATUS_U2 0xFFFFFFFF
#define PCNT_CORE_STATUS_U2_S 0

#define PCNT_U3_STATUS (DR_REG_PCNT_BASE + 0x009c)
#define PCNT_CORE_STATUS_U3 0xFFFFFFFF
#define PCNT_CORE_STATUS_U3_S 0

#define PCNT_U4_STATUS (DR_REG_PCNT_BASE + 0x00a0)
#define PCNT_CORE_STATUS_U4 0xFFFFFFFF
#define PCNT_CORE_STATUS_U4_S 0

#define PCNT_U5_STATUS (DR_REG_PCNT_BASE + 0x00a4)
#define PCNT_CORE_STATUS_U5 0xFFFFFFFF
#define PCNT_CORE_STATUS_U5_S 0

#define PCNT_U6_STATUS (DR_REG_PCNT_BASE + 0x00a8)
#define PCNT_CORE_STATUS_U6 0xFFFFFFFF
#define PCNT_CORE_STATUS_U6_S 0

#define PCNT_U7_STATUS (DR_REG_PCNT_BASE + 0x00ac)
#define PCNT_CORE_STATUS_U7 0xFFFFFFFF
#define PCNT_CORE_STATUS_U7_S 0

#define PCNT_CTRL (DR_REG_PCNT_BASE + 0x00b0)
#define PCNT_CLK_EN (BIT(16))
#define PCNT_CNT_PAUSE_U7 (BIT(15))
#define PCNT_PLUS_CNT_RST_U7 (BIT(14))
#define PCNT_CNT_PAUSE_U6 (BIT(13))
#define PCNT_PLUS_CNT_RST_U6 (BIT(12))
#define PCNT_CNT_PAUSE_U5 (BIT(11))
#define PCNT_PLUS_CNT_RST_U5 (BIT(10))
#define PCNT_CNT_PAUSE_U4 (BIT(9))
#define PCNT_PLUS_CNT_RST_U4 (BIT(8))
#define PCNT_CNT_PAUSE_U3 (BIT(7))
#define PCNT_PLUS_CNT_RST_U3 (BIT(6))
#define PCNT_CNT_PAUSE_U2 (BIT(5))
#define PCNT_PLUS_CNT_RST_U2 (BIT(4))
#define PCNT_CNT_PAUSE_U1 (BIT(3))
#define PCNT_PLUS_CNT_RST_U1 (BIT(2))
#define PCNT_CNT_PAUSE_U0 (BIT(1))
#define PCNT_PLUS_CNT_RST_U0 (BIT(0))

#define PCNT_DATE (DR_REG_PCNT_BASE + 0x00fc)
#define PCNT_PCNT_DATE 0xFFFFFFFF
#define PCNT_PCNT_DATE_S 0
#define PCNT_PCNT_DATE_VERSION 0x14122600

#endif
